{{tag>Dapper Hardy Jaunty Karmic tutoriel partage imprimante}}

----


====== Comment configurer un ordinateur en "serveur d'impression" ? ======

Cette page explique comment configurer un poste Ubuntu en **serveur d'impression**. Cette configuration va permettre de** partager une imprimante** qui est raccordée directement à cet ordinateur.

La schéma suivant décrit cette situation :

{{ :print_part_ubuntu.png?nolink }}

<note help>Cette documentation explique la méthode pour Ubuntu, Edubuntu et Xubuntu, et une méthode universelle à tous les systèmes disposant de CUPS (MacOS et Unix en général).</note>


===== Pré-requis =====

  * [[:reseau|Un réseau fonctionnel]] ;
  * [[:imprimante|une imprimante installée]] ;
  * [[:reglages_du_reseau|le PC serveur (celui à configurer), qui va partager l'imprimante, doit être en IP fixe sur le réseau local]] (seulement pour 7.04 et précédents).


===== Configuration du poste Serveur =====

==== Ubuntu 9.04 et supérieurs ====

  * Ouvrir le gestionnaire de configuration d'impression :
    * //Système -> Administration -> Impression//
  * Installer l'imprimante si ce n'est pas déjà fait :
    * Consulter [[:imprimante|cette page]] pour plus d'informations
  * Ouvrir le partage global :
    * //Serveur -> Paramètres//
    * Cocher la case "Publier les imprimantes partagées connectées à ce système"
    * Cliquer sur "Valider"
  * Ouvrir le partage pour votre imprimante :
    * Clic droit sur l'imprimante à partager -> Cocher la case "Partagée"

<note tip>Si le gestionnaire se bloque sur une erreur « Failed to set settings », la solution (moins propre) est de refaire la modification en tant que root : 
**sudo /usr/bin/system-config-printer**</note>

=== Problème possible ===

Si après la configuration vous ne pouvez toujours pas partager votre imprimante, éditez le fichier **/etc/cups/cupsd.conf** en remplaçant la variable **@LOCAL** par votre adresse réseau **192.168.*** dans la section //Allow shared printing...//

<file>
<Location />
  # Allow shared printing...
  Order allow,deny
  # Allow @LOCAL
  Allow 192.168.*
</Location>
</file>

Ensuite, relancez CUPS via la commande dans un [[:terminal]]:

  sudo service cups restart

==== Ubuntu 8.04 LTS ====

  * Ouvrez le gestionnaire de configuration d'imprimante :
    * //Système -> Administration -> Impression// pour Ubuntu,
    * //Applications -> Paramètres -> Impression// pour Xubuntu,
  * Ajouter une imprimante, si ce n'est déjà fait. (voir [[:imprimante|cette page pour plus d'informations]]).
  * Sélectionnez **"Paramètres du serveur"** et cochez la case **"Partager les imprimantes publiées connectées à ce système"**.

{{wiki:config-imprimante-serveur.png?600}}

  * Ensuite, sélectionnez chaque imprimante locale à partager dans la liste de gauche et, dans l'onglet **"Comportements"** :
    * vérifiez que la case **"Activé"** est bien cochée,
    * cochez la case **"Partagée"**.

{{wiki:config-imprimante-serveur-comportement.png?600}}

  * Normalement cela suffit pour activer le partage côté serveur.

=== Problème possible ===

Après configuration, je ne pouvais toujours pas partager mon imprimante, j'ai dû [[:tutoriel:comment_editer_un_fichier|intervenir dans le fichier]] **/etc/cups/cupsd.conf**

Son contenu par défaut, dans le section relative au partage d'imprimante était celui-ci :

<file>
# Share local printers on the local network.
Browsing On
BrowseOrder allow,deny
BrowseAddress @LOCAL
DefaultAuthType Basic
<Location />
  # Allow shared printing...
  Order allow,deny
  Allow @LOCAL
</Location>
</file>

Il faut croire que je devais avoir un problème avec la variable **@LOCAL** car cela ne suffisait pas.

j'ai donc remplacé

<file>  Allow @LOCAL</file>

par 

<file>  Allow 192.168.*</file>

<note>**192.168.*** est à remplacer par les chiffres de votre IP.

Mais notez que ce cas est le plus répandu, loin devant le **10.0.***</note>

Cela a suffi pour résoudre le problème de partage, après avoir relancé CUPS via cette commande dans un [[:terminal]] :

  sudo /etc/init.d/cupsys restart

== Autre problème possible == 

Lors d'une tentative d'installation d'imprimante à partir d'une machine différente où est installée CUPS, et malgré la configuration en place décrite ci-dessus, il est possible  d'avoir l'erreur ci-dessous :

> 426 Upgrade Required

Après recherche, CUPS, par défaut, tente d'utiliser SSL. il y a de fortes chances que SSL soit mal configuré.
Dans l'hypothèse de ne pas reconfigurer SSL, vous pouvez [[:tutoriel:comment_modifier_un_fichier|ajouter]] la ligne suivante dans le fichier **/etc/cups/cupsd.conf** :

<file>
DefaultEncryption Never
</file>

Puis relancer le service cupsys :

  sudo /etc/init.d/cupsys restart


==== Ubuntu 6.06 LTS serveur ====

Ouvrir //Système -> Administration -> Impression// et [[:imprimante|ajouter une imprimante]].

{{wiki:partage-imprimantes.png}}

Après avoir installé une imprimante, choisissez-la par défaut puis cochez simplement dans //Paramètres globaux// les deux options à dispositions (**Détecter des imprimantes LAN** et **Partager des imprimantes**). Vos imprimantes ou plutôt votre imprimante devrait maintenant être disponible sur le réseau après avoir redémarré l'ordinateur ou seulement le serveur d'impression((sudo /etc/init.d/cupsys restart)) .



==== Ouverture du Port 631 - Optionnel ====

Si votre [[:pare-feu]] est activé, (par défaut si vous n'avez rien fait, il est désactivé sous Ubuntu).

**Il faut ouvrir le port 631 (ipp) (comme décrit dans la suite), si vous n'avez pas de pare-feu activé ne faites rien !**


  * Ouvrir [[:Firestarter]]: dans le menu //Système -> Administration -> Firestarter//.
  * Sélectionner l'onglet **Politique**.
  * Dans la partie inférieure, **Autoriser le service**, faire un clic-droit pour ajouter une nouvelle règle.
  * Inscrire le port 631 (le nom du service IPP se remplit automatiquement) ainsi que l'adresse IP du client.
  * Quitter [[:Firestarter]]


==== CUPS : universel, pratique, fiable ====

{{cups2.png}}

Si CUPS est installé, une interface WEB est disponible à l'adresse [[http://localhost:631]].
Cette jolie interface est celle de CUPS, et à partir de là, votre paramétrage peut se faire en quelques clics de souris.


=== Ajouter une imprimante ===

Sous la bannière bienvenue vous trouverez "ajouter une imprimante"... Suivez les instructions.

=== Autoriser les utilisateurs à s'en servir ===

Aller dans l'onglet "administration" (2e en partant de la gauche), cocher 2 ou 3 lignes : 
  * l'une concernant le partage publique,
  * l'autre pour autoriser l'impression depuis internet,
  * et la dernière si vous le souhaitez (facultatif, mais bien pratique) l'administration à distance.

Cette dernière vous permettra de faire un petit coucou à votre CUPS et de le configurer depuis n'importe quel poste de votre réseau local, en y accédant ainsi :
  http://<@ip_du_cups_de_l'imprimante>:631
Ou même depuis l'Internet (la 2e ligne servant à ça), à condition que votre connexion à Internet redirige le port 631 vers votre ordinateur (enfin celui disposant du CUPS).


== Un exemple simple ==

Admettons que votre imprimante soit connectée soit en USB, soit en parallèle (ou tout autre interface), à un ordinateur dont l'adresse IP est 192.168.1.3 dans le réseau local. Alors, accéder à cette imprimante (et surtout au CUPS qui la concerne) se fera //via// [[http://192.168.1.3:631/]].

=== La petite astuce ===

Plein d'imprimantes sur le réseau ? Pas de panique. À chaque CUPS son imprimante, mais aussi celle de l'autre.
Il vous suffira d'ajouter une imprimante, connectée en IPP //(Internet Printing Protocol)// et d'entrer en guise d'adresse :

  ipp://<@ip_du_cups_de_l'imprimante>:631/printers/<nom_de_l'imprimante_sur_ce_cups>/


== Exemple simple ==

Si mon ordinateur, dont l'@IP est 192.168.1.3 sur le réseau local dispose d'une imprimante parallèle configurée préalablement, et dont le nom est TralAlA123, alors l'adresse PII((traduction la plus adaptée de IPP : Protocole d'impression par Internet)) est la suivante :
  ipp://192.168.1.3:631/printers/TralAlA123
Et celle-ci reste valable sur tout le réseau local.


=== Le dernier coup de pouce ===

Une aide formidable est fournie. L'aide est bien documentée (bien qu'améliorable, bien sûr), mais en Anglais, ce qui risque d'en tuer plus d'un.


===== Configurer un client pour accéder à l'imprimante =====

==== Configuration d'un client Ubuntu 8.04 LTS ou suivants ====

=== Automatiquement ===

  * Ouvrez le gestionnaire de configuration d'imprimante:
    * //Système -> Administration -> Impression// pour Ubuntu,
    * //Applications -> Paramètres -> Impression// pour Xubuntu,
  * Puis sélectionnez **Paramètres du serveur** et cocher la case **Montrer les imprimantes partagées par les autres systèmes**,
  * Cliquez sur **Appliquer**,
  * Fermez puis réouvrez le configurateur,
  * Cliquez sur **Actualiser** : l'imprimante devrait apparaître en dessous de **Imprimantes distantes**,
  * Paramétrez ensuite comme imprimante par défaut si vous le voulez.

=== Manuellement ===

Si l'auto-détection ne marche pas, ou si l'ordinateur qui partage l'imprimante ne partage pas les données permettant l'auto-détection, suivez cette méthode :

  * ouvrez : //Système -> Administration -> Impression//, 
  * puis cliquez sur : **Nouvelle imprimante**;
  * dans la liste, choisissez : **Internet Printing Protocol (ipp)**;
  * dans la case **Hôte :** tapez l'adresse IP du serveur d'impression, dans la case **File d'attente :** tapez le nom de l'imprimante (telle qu'elle est nommée sur le serveur) et cliquez sur **Vérifier...**. Un message vous dira si l'imprimante est accessible, sinon vérifiez vos paramètres.
  * dans la fenêtre qui apparaît, choisissez l'imprimante que vous voulez utiliser, et faites **Valider**,
  * faites **Suivant**, et choisissez le pilote de l'imprimante distante,
  * arrivé au choix du nom de l'imprimante, donnez lui un nom, et faites **Appliquer**,
  * ensuite, dans la fenêtre principale, cliquez sur **Appliquer** et ensuite **Actualiser**, l'imprimante devrait apparaître en dessous de **Imprimantes Réseau**,
  * il vous suffira ensuite de la paramétrer comme imprimante par défaut si vous le voulez.

<note important>Si vos imprimantes réseau sont correctement reconnues mais qu'à l'impression rien ne se passe... lisez les 2 points suivants.</note>

<note>Amis débutants, si vous ne comprenez pas le point 1 ci-dessous passez au 2 directement...</note>

== Explication et détection du problème ==

Essayez de faire un ping sur votre machine serveur (pas l'IP !) si ça ne marche pas vous tenez le coupable !
CUPS présente à mon avis un petit défaut à ce niveau-là.
Une connexion réseau et CUPS peut très bien se faire en utilisant seulement des adresses IP, mais à la détection d'une imprimante réseau CUPS enregistre son adresse IPP en utilisant le nom d'hôte du serveur, ensuite à l'impression c'est le nom en question qui est utilisé pour chercher le serveur.
Or... le nom d'hôte du serveur n'est pas toujours connu du client.

== Résolution du problème ==

Il vous suffit de faire connaître le nom d'hôte du serveur au client. Concrètement, il suffit de [[:tutoriel:comment_modifier_un_fichier|modifier le fichier]] **/etc/hosts** pour ajouter une ligne au début (sans effacer le reste) avec l'IP du serveur d'impression suivie de son nom. Exemple :

<file>
192.168.xx.xx   nom_du_serveur
</file>

Si vous ne savez pas par quoi remplacer les xx.xx et avez accès au serveur, il suffit d'y taper « ''ifconfig'' » dans un [[:terminal]]. Vous y trouverez une ligne avec un message du type : <file>inet adr:192.168.1.10</file> C'est justement l'adresse IP de la machine sur le réseau local.
Si vous n'avez pas la possibilité de faire cela, demandez à l'administrateur du serveur.

Concernant le nom d'hôte, sur votre machine cliente il suffit de regarder là : [[http://localhost:631/printers/|http://localhost:631/printers/]] c'est la page des imprimantes de CUPS.
Cherchez l'imprimante réseau située sur le serveur qui vous intéresse et vous devez voir une ligne du type :
<code>URL du matériel : IPP://nom_du_serveur:631...</code>
C'est ce nom qu'il faut utiliser pour votre fichier **/etc/hosts.**

Voilà, avec ça vous devriez pouvoir faire "bonne impression" ;-)

----

//Contributeurs : figaro, [[:utilisateurs:dmoyne]], [[:utilisateurs:Incoming]], [[:utilisateurs:KinderSurpriZ]], [[:utilisateurs:Fabien26]], [[:utilisateurs:dsi0743]], [[:utilisateurs:DarkHylian]], [[:utilisateurs:Mysteroïd]], [[:utilisateurs:guigouz]].//